SDEF
// -----------------------------------------------------------------------------
//  $Logfile:: /Quake 2 Engine/Sin/Base Sin Data/Models/Weapon/view_pulse2.de $
// $Revision:: 37                                                             $
//   $Author:: Jimdose                                                        $
//     $Date:: 10/22/98 12:16a                                                $
//
// Copyright (C) 1998 by Ritual Entertainment, Inc.
// All rights reserved.
//
// This source may not be distributed and/or modified without
// expressly written permission by Ritual Entertainment, Inc.
//
// This is a model definition file.  It is to be used in conjunction with Sin.
//
// -----------------------------------------------------------------------------
// MODEL DESCRIPTION:
// View Weapon Model: Pulse Rifle.
//
// MODEL AUTHOR:
// Michael
//

// -----------------------------------------------------------------------------
// FILE DECLARATIONS
//
// Model Commands
path models/pulse3
origin 0 -25 -73

// Base Model
pulse_base.sbm

// Skins
normal	            pulse_base.tga

// Normal Animations
ready 	            pulse_ready.sam
secondaryready      pulse_ready.sam
primaryfire		    pulse_fire1.sam
secondaryfire		pulse_fire2.sam
primaryidle		    pulse_idle1.sam
secondaryidle		pulse_idle2.sam
primary2secondary	pulse_switchto.sam
secondary2primary	pulse_switchback.sam
spindown		    pulse_fire2spindown.sam
putaway			    pulse_putaway.sam
primaryputaway		pulse_putaway.sam
secondaryputaway	pulse_putaway.sam

// Define model groups
id  10 group hatch twosided translucent66
id  20 group redlight fullbright
id  30 group cell envmapped
id  40 group bluecell fullbright translucent66
id 200 group weapon bone barrel 0 180 90

// -----------------------------------------------------------------------------
// INITIALIZATION SECTION
//
!init:

// Class Setup
server actionincrement 18
server setaimanim primaryidle 0

// Client Sound Aliases
client aliascache snd_fire1        "weapons/pulse/fire2d.wav"
client aliascache snd_spark1       "weapons/pulse2/electrk2.wav"
client aliascache snd_open1        "weapons/pulse/open1.wav"
client aliascache snd_loop1        "weapons/pulse/loop1.wav"
client aliascache snd_close1       "weapons/pulse/close1.wav"
client aliascache snd_altloop1     "weapons/pulse2/idle2.wav"
client aliascache snd_altdownloop1 "weapons/pulse2/down2.wav"
client aliascache snd_altfire1     "weapons/pulse2/mix2a.wav"
client aliascache snd_altopen1     "weapons/pulse2/up.wav"
client aliascache snd_altclose1    "weapons/pulse2/down.wav"

// -----------------------------------------------------------------------------
// MAIN SECTION
//
!main:

// Define the client/server animation references
client ready    6 randomsound snd_open 1 1
client ready last randomsound snd_loop .6 7
server ready    6 movementsound

server secondary2primary first setaimanim primaryidle 0
client secondary2primary first randomsound snd_altclose 1 1
client secondary2primary first randomsound snd_altdownloop1 .2 7

client secondary2primary last randomsound snd_loop .4 7
server secondary2primary    6 movementsound

server primary2secondary first setaimanim secondaryidle 0
client primary2secondary first randomsound snd_altopen 1 7
client primary2secondary     6 randomsound snd_open 1 1
client primary2secondary  last randomsound snd_altloop .4 7
server primary2secondary     6 movementsound

client primaryfire first attach barrel sprites/pulse_muzzle.spr time 0.1 scale 1.0 
client primaryfire first randomsound snd_fire 1 1
// dlight <red> <rand_red_amount> <green> <rand_green_amount> <blue> <rand_blue_amount> <radius> <rand_radius_amount> <life> <decay>
client primaryfire first dlight 0 0 0 0 1 0 300 0 0.6 0.8
server primaryfire first weaponsound
server primaryfire first shoot

//client secondaryfire first attach barrel sprites/pulse_muzzle.spr animate fast

client secondaryfire first randomsound snd_spark .8 1
client secondaryfire start randomsound snd_altfire 1 2
server secondaryfire first weaponsound
// dlight <red> <rand_red_amount> <green> <rand_green_amount> <blue> <rand_blue_amount> <radius> <rand_radius_amount> <life> <decay>
server secondaryfire 1 shoot 512
client secondaryfire 1 shootbeam barrel models/lightning.def lightning length 512 minoffset 1 maxoffset 25
client secondaryfire 1 shootbeam barrel models/lightning.def lightning length 512 minoffset 1 maxoffset 25
client secondaryfire 1 shootbeam barrel models/beam.def length 610
client secondaryfire 1 shootbullets barrel 1 0 0 0 610
client secondaryfire 1 dlight 0 0 0 0 1 0 300 0 0.6 0.8
server secondaryfire 2 shoot 512
client secondaryfire 2 shootbeam barrel models/lightning.def lightning length 512 minoffset 1 maxoffset 25
client secondaryfire 2 shootbeam barrel models/lightning.def lightning length 512 minoffset 1 maxoffset 25
client secondaryfire 2 shootbeam barrel models/beam.def length 610
client secondaryfire 2 shootbullets barrel 1 0 0 0 610
client secondaryfire 2 dlight 0 0 0 0 1 0 200 0 0.6 0.8
server secondaryfire 3 shoot 512
client secondaryfire 3 shootbeam barrel models/lightning.def lightning length 512 minoffset 1 maxoffset 25
client secondaryfire 3 shootbeam barrel models/lightning.def lightning length 512 minoffset 1 maxoffset 25
client secondaryfire 3 shootbeam barrel models/beam.def length 610
client secondaryfire 3 shootbullets barrel 1 0 0 0 610
client secondaryfire 3 dlight 0 0 0 0 1 0 300 0 0.6 0.8
server secondaryfire 4 shoot 512
client secondaryfire 4 shootbeam barrel models/lightning.def lightning length 512 minoffset 1 maxoffset 25
client secondaryfire 4 shootbeam barrel models/lightning.def lightning length 512 minoffset 1 maxoffset 25
client secondaryfire 4 shootbeam barrel models/beam.def length 610
client secondaryfire 4 shootbullets barrel 1 0 0 0 610
client secondaryfire 4 dlight 0 0 0 0 1 0 200 0 0.6 0.8
server secondaryfire 5 shoot 512
client secondaryfire 5 shootbeam barrel models/lightning.def lightning length 512 minoffset 1 maxoffset 25
client secondaryfire 5 shootbeam barrel models/lightning.def lightning length 512 minoffset 1 maxoffset 25
client secondaryfire 5 shootbeam barrel models/beam.def length 610
client secondaryfire 5 shootbullets barrel 1 0 0 0 610
client secondaryfire 5 dlight 0 0 0 0 1 0 300 0 0.6 0.8
server secondaryfire 6 shoot 512
client secondaryfire 6 shootbeam barrel models/lightning.def lightning length 512 minoffset 1 maxoffset 25
client secondaryfire 6 shootbeam barrel models/lightning.def lightning length 512 minoffset 1 maxoffset 25
client secondaryfire 6 shootbeam barrel models/beam.def length 610
client secondaryfire 6 shootbullets barrel 1 0 0 0 610
client secondaryfire 6 dlight 0 0 0 0 1 0 200 0 0.6 0.8

//client secondaryfire last randomsound null_sound 1

client spindown         first randomsound snd_spindown 1 2

client putaway          first randomsound snd_close 1 7
server putaway          first movementsound

client primaryputaway   first randomsound snd_close 1 7
server primaryputaway   first movementsound

client secondaryidle    first randomsound null_sound 1 7

client secondaryputaway first randomsound snd_altclose 1 7
client secondaryputaway     1 randomsound snd_close 1 1
server secondaryputaway first movementsound

// -----------------------------------------------------------------------------
// SOURCESAFE Update Log
//
// $Log:: /Quake 2 Engine/Sin/Base Sin Data/Models/Weapon/view_pulse2.def     $
// 
// 37    10/22/98 12:16a Jimdose
// added setaimanim
// 
// 36    10/16/98 9:49p Aldie
// 
// 35    10/04/98 10:27p Aldie
// Updated shoot bullets command
// 
// 34    9/30/98 2:41p Joeske
// Added in formatting.
// 
// -----------------------------------------------------------------------------
